import axios from 'axios';
import { useUserStore } from '../stores/userStore';
// 创建 axios 实例
const service = axios.create({
    baseURL: '/api' || '', // 你的 API 基础路径，可以在环境变量中配置
    timeout: 5000 // 请求超时时间
});

// 请求拦截器
service.interceptors.request.use(
    config => {
        const userStore = useUserStore();
        console.log('userStore:', userStore);
        const token = userStore.getToken();
        console.log(token)
        if (token) {
            // 将 token 添加到请求头
            config.headers.Authorization = `${token}`;
        }
        return config;
    },
    error => {
        console.error('请求拦截器出错:', error);
        return Promise.reject(error);
    }
);

// 响应拦截器
service.interceptors.response.use(
    response => {
        const res = response.data;

        // 根据后端返回的状态码进行不同处理
        if (res.code !== 1) {
            console.error('请求失败:', res.message || '未知错误');
            return Promise.reject(new Error(res.message || '未知错误'));
        } else {
            return res;
        }
    },
    error => {
        console.error('响应拦截器出错:', error);
        return Promise.reject(error);
    }
);

export default service;